#!/usr/bin/env python

AUTH_BUILTIN_SRC = 'auth_builtin.c'
AUTH_DOMAIN_SRC = 'auth_domain.c'
AUTH_SAM_SRC = 'auth_sam.c'
AUTH_SERVER_SRC = 'auth_server.c'
AUTH_UNIX_SRC = 'auth_unix.c'
AUTH_WINBIND_SRC = 'auth_winbind.c'
AUTH_WBC_SRC = 'auth_wbc.c'
AUTH_SCRIPT_SRC = 'auth_script.c'
AUTH_NETLOGOND_SRC = 'auth_netlogond.c'

AUTH_SRC = '''auth.c
           user_krb5.c
           auth_compat.c auth_ntlmssp.c'''

bld.SAMBA3_SUBSYSTEM('TOKEN_UTIL',
                    source='token_util.c',
                    vars=locals())

bld.SAMBA3_SUBSYSTEM('AUTH_COMMON',
                    source='''auth_util.c
			      user_util.c
			      check_samsec.c
			      server_info.c
			      server_info_sam.c
			      user_info.c
			      user_util.c''',
                    vars=locals())

bld.SAMBA3_SUBSYSTEM('auth',
                    source=AUTH_SRC,
                    deps='''PLAINTEXT_AUTH SLCACHE DCUTIL TOKEN_UTIL AUTH_COMMON''',
                    vars=locals())

bld.SAMBA3_MODULE('auth_sam',
                 subsystem='auth',
                 source=AUTH_SAM_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_sam'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_sam'))

bld.SAMBA3_MODULE('auth_unix',
                 subsystem='auth',
                 source=AUTH_UNIX_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_unix'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_unix'))

bld.SAMBA3_MODULE('auth_winbind',
                 subsystem='auth',
                 source=AUTH_WINBIND_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_winbind'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_winbind'))

bld.SAMBA3_MODULE('auth_wbc',
                 subsystem='auth',
                 source=AUTH_WBC_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_wbc'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_wbc'))

bld.SAMBA3_MODULE('auth_server',
                 subsystem='auth',
                 source=AUTH_SERVER_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_server'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_server'))

bld.SAMBA3_MODULE('auth_domain',
                 subsystem='auth',
                 source=AUTH_DOMAIN_SRC,
                 deps='RPC_CLIENT_SCHANNEL',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_domain'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_domain'))

bld.SAMBA3_MODULE('auth_builtin',
                 subsystem='auth',
                 source=AUTH_BUILTIN_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_builtin'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_builtin'))

bld.SAMBA3_MODULE('auth_netlogond',
                 subsystem='auth',
                 source=AUTH_NETLOGOND_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_netlogond'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_netlogond'))

bld.SAMBA3_MODULE('auth_script',
                 subsystem='auth',
                 source=AUTH_SCRIPT_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_script'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_script'))
